﻿<?php
require_once ('start_session.php');
require_once('db.php');
$dbc = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
$msg = "";	
$max_size = "500000x1024"; //maxstorlek på bild som man laddar upp
if(isset($_SESSION['id'])){
	$user_id = $_SESSION['id'];
}
else{
	$user_id = 'NULL';
}
if(!file_exists("images/$user_id")){ //om det ine finns någon mapp
$mapp = mkdir("images/$user_id", 0777);	//lägg upp en mapp
}

else {
$mapp = "images/$user_id";	//mapp där bilderna ska läggas
}
if(array_key_exists('upload',$_POST)){ 	//Om man har laddat upp 
	//$mapp = "/images/".$user_id;	//mapp där bilderna ska läggas
	$mime_type = array("image/jpeg","image/pjpeg","image/gif","image/png"); //vilken typ av filer som man godkänner
	$image_name = basename($_FILES['image']['name']); 	//Det namn filen har som man laddar upp
	$src = $mapp ."/". $image_name;	//Sökväg när filen är sparad på servern
	$type = $_FILES['image']['type'];	//Vilken typ av fil man laddat upp
	$tmp = $_FILES['image']['tmp_name'];	//Filens temporärt tilldelade namn
	$size = $_FILES['image']['size'];	//Filens storlek
	list($width,$height) = getimagesize($tmp);	//Filens storlek i bredd och höjd
	$new_width = 100;	//Den nya bredd man vill ha
	$new_height = 100;	//Den nya höjd man vill ha
	$img = imagecreatetruecolor($new_width,$new_height);	//Gör en ny tom bild med nya måtten
	if(is_uploaded_file($tmp) && in_array($type,$mime_type) &&  $size <= $max_size){
		switch($type) {
			case 'image/jpeg':
				$tmp = imagecreatefromjpeg($_FILES['image']['tmp_name']); //Gör en temporär fil			
				imagecopyresampled($img,$tmp,0,0,0,0,$new_width,$new_height,$width,$height); //Skalar ner originalbilden till den storlek som vår nya tomma bild har
				imagejpeg($img,$src); //Sparar den nedskalade bilden i den mapp vi valt
				
				; break;
				
			case 'image/png':
				$tmp = imagecreatefrompng($_FILES['image']['tmp_name']);		
				imagecopyresampled($img,$tmp,0,0,0,0,$new_width,$new_height,$width,$height);
				imagepng($img,$src);	
				; break;
				
			case 'image/gif':
				$tmp = imagecreatefromgif($_FILES['image']['tmp_name']);			
				imagecopyresampled($img,$tmp,0,0,0,0,$new_width,$new_height,$width,$height); 
				imagegif($img,$src);	
				; break;
		}

		$query = "INSERT INTO image ( name , user_id) VALUES ('$src','$user_id')";
		mysqli_query($dbc, $query) or die(mysqli_error($dbc)); 
		$msg = "Upload was successful.";
	}
	else{
		if($size > $max_size){
			$msg = "The file is to large";
		}
		elseIf(!in_array($type,$mime_type)){
			$msg = "The image have to be jpg, png or gif";
		}
		else {
		$msg = "Upload failed.";
		}
	}
}
?>

<div id="upload">
	<form id="image_upload" method="post" action="index.php?act=playground" enctype='multipart/form-data'>
		<input type="hidden" name="MAX_FILE_SIZE" value="<?php echo $max_size; ?>" />
		<input type="hidden" name="user_id" value="<?php $_SESSION['id'] ?>" />
		<p>Upload an image :</p>
		<div>
			<input type="file" name="image" />
			<input type="Submit" value="Submit" name="upload" />
		</div>
	</form>

	<p id="message">
	<?php echo $msg;
	?></p>
</div>